Modern serial protocols allow the interconnection of peripheral devices to other computing devices. Example protocols include the Universal Serial Bus (USB) protocols, as specified in the USB Specifications 1.0, 2.0, 3.0 and 3.1, the contents of which are hereby incorporated by reference. Typically, a computing device controls communication with a peripheral device. The peripheral device is typically referred to as a “slave” to the “host” computing device.
Accordingly, a port on the peripheral device that allows for interconnection with the computing device is referred to as a “slave” port. Likewise, a port on the computing device is referred to as a “host” port.
Some devices blur the distinction between host and slave. For example, a typical cellular telephone, interconnected with a personal computing device acts as a slave to the personal computing device. In other configurations, however, the cellular telephone may act as a host to an external memory. In such instances, the port of such device (e.g. the cellular telephone) may act as either a slave port, or a host port, as specified in the USB-OTG standard.
Multiple devices may be interconnected by way of a hub. Typically a hub includes a single host port, and multiple slave ports. In this way, a single host may be concurrently interconnected with many peripherals.
U.S. Provisional Patent application No. 62/099,941 discloses a configurable device hub whose multiple ports may be arbitrarily assigned to be master or slave ports.
There remains a need to configure a device with multiple configurable ports, depending on its use.